Term::ReadKey wants to load its XS part to check its blockoptions()
value, which actually comes down to availability of poll() and select().

--- a/cpan/Term-ReadKey/ReadKey_pm.PL
+++ b/cpan/Term-ReadKey/ReadKey_pm.PL
@@ -503,25 +503,18 @@
 !FIRSTPART
 
 close OUT;
-# preload the XS module needed for the blockoptions() expansions below
-# does not work with miniperl
-package Term::ReadKey;
-require DynaLoader;
-our @ISA = qw(DynaLoader);
 
-print "Bootstrapping the XS for blockoptions: ";
-my $blockoptions;
-eval { bootstrap Term::ReadKey };
-if (!$@) {
-  $blockoptions = blockoptions();
-} elsif ($^ eq 'MSWin32') {
-  $blockoptions = 8;
-} else {
-  system "$Config{make} blockoptions";
-  my $cmd = "./blockoptions" . $Config{exe_ext};
-  # $cmd = "$Config{ldlibpthname}=../.. $cmd" if $Config{useshrplib} =~ /^(true|yes)$/;
-  $blockoptions = `$cmd`;
+require Config;
+
+sub blockoptions {
+	my $ret = 1; # host has fcntl O_NDELAY
+	$ret |= 2 if $Config{'d_poll'} eq 'define';
+	$ret |= 4 if $Config{'d_select'} eq 'define';
+	return $ret;
 }
+
+print "Bootstrapping the XS for blockoptions: ";
+my $blockoptions = blockoptions();
 print $blockoptions,"\n";
 
 open OUT, ">>", $file or die "Can't append to $file: $!";
